1. Field of the Invention
The present invention relates to techniques for creating oilfield applications for use in performing oilfield operations.
2. Background of the Related Art
Oilfield operations involve various sub-operations used to locate and gather valuable hydrocarbons. Various tools, such as seismic tools, are often used to locate the hydrocarbons. One or more wellsites may be positioned along an oilfield to locate and gather the hydrocarbons from subterranean reservoirs of the oilfield as shown in FIG. 1. The wellsites are provided with tools capable of advancing into the ground and removing hydrocarbons from the subterranean reservoirs as shown in FIG. 2A. Production facilities are positioned at surface locations to collect the hydrocarbons from the wellsite(s). Fluid is drawn from the subterranean reservoir(s) and passes to the production facilities via transport mechanisms, such as tubing. Various equipment is positioned about the oilfield to monitor and manipulate the flow of hydrocarbons from the reservoir(s) as shown in FIG. 2B.
During oilfield operations, it is often desirable to monitor various oilfield parameters, such as fluid flow rates, composition, etc. Sensors may be positioned about the oilfield to collect data relating to the wellsite and the processing facility, among others. For examples, sensors in the wellbore may monitor fluid composition, sensors located along the flow path may monitor flow rates and sensors at the processing facility may monitor fluids collected. The monitored data is often used to make real-time decisions at the oilfield. Data collected by these sensors may be further analyzed and processed.
The processed data may be used to determine conditions at the wellsite(s) and/or other portions of the oilfield, and make decisions concerning these operations. Operating parameters, such as wellsite setup, drilling trajectories, flow rates, wellbore pressures, production rates and other parameters, may be adjusted based on the received information. In some cases, known patterns of behavior of various oilfield configurations, geological factors, operating conditions or other parameters may be collected over time to predict future oilfield operations.
Oilfield data is often used to monitor and/or perform various oilfield operations. There are numerous factors that may be considered in operating an oilfield. Thus, the analysis of large quantities of a wide variety of data is often complex. Over the years, oilfield applications have been developed to assist in processing data. For example, simulators, or other scientific applications, have been developed to take large amounts of oilfield data and to model various oilfield operations. Typically, there are different types of simulators for different purposes. Examples of these simulators are described in U.S. Pat. No. 5,992,519, WO2004049216 and U.S. Pat. No. 6,980,940.
Numerous oilfield operations, such as drilling, evaluating, completing, monitoring, producing, simulating, reporting, etc., may be performed. Typically, each oilfield operation is performed and controlled separately using separate oilfield applications that are each written for a single purpose. Thus, many such operations are often performed using separate oilfield application. In some cases, it may be necessary to develop special applications, or modify existing applications to provide the necessary functionality.
Certain techniques have been developed for creating general applications to perform various tasks. Techniques have also been developed to provide plug-ins to expand the functionality of oilfield simulators. Despite the advancements in development of applications and oilfield plug-ins, there remains a need to develop techniques for creating oilfield applications capable of integrating a wide variety of individual oilfield applications (sometimes referred to as oilfield modules) needed to perform various oilfield tasks and/or operations. It would be desirable to have a flexible system capable of selecting oilfield modules, and adapting those modules for use in an oilfield application. It is further desirable that such techniques be capable of one of more of the following, among others: interfacing with multiple oilfield modules of various types, hosting an oilfield application according to defined constraints, performing a wide variety of oilfield tasks and/or operations, selectively performing one or more oilfield tasks and/or operations in a desired sequence and/or format, selectively integrating the functionality of various modules into the oilfield application, providing for selective interaction between modules as desired, adapting modules for use in a desired oilfield application format, and converting pre-existing oilfield applications for use with the oilfield application.